翻訳と辞書
Words near each other
・ powerless to ~, be
・ PowerMac
・ PowerMAX OS
・ PowerNow!
・ PowerPC
・ PowerPc
・ Powerpc
・ PowerPC 601
・ PowerPC 603
・ PowerPC 604
・ PowerPC 970
・ PowerPC G3
・ PowerPC G4
・ PowerPC G5
・ Powerplant
・ POWERPLAY
・ PowerPoint
・ Powerpoint
・ POWERPOP & CO.
・ POWERPOP & Co.


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

PowerPC 970 : ウィキペディア日本語版
PowerPC 970

970シリーズは、IBM2002年に発表した アーキテクチャのスーパースカラ64ビットマイクロプロセッサである。
970シリーズはIBMとアップルにより共同で開発された〔アップル、世界最速のパーソナルコンピュータ、 を発表 〕〔アップルと IBM が プロセッサを発表 〕。このプロジェクトはGP-UL、またの名を という開発名の下で進められた。 とはこのコアの元となった の開発名である。アップルは に採用し、このプロセッサは5年にも亘る共同開発の成果であり、将来複数世代にわたって採用することになると述べていたが、このプロセッサのマッキントッシュでの利用は3年間と短命に終わった。IBM が CPU の高速化に失敗した為、アップルは のリリース後1年で3GHzのプロセッサを生産するという約束を撤回しなければならなかった。IBMは、ポータブルコンピュータに合うように、プロセッサの消費電力を十分に落とすことができなかった。アップルはこのプロセッサの派生品を3つ採用したに過ぎない。
は伝統的にビッグエンディアンとリトルエンディアンを切り替えることができるバイエンディアンとして設計されているが、 970 はビッグエンディアンのみをサポートするように設計が変更された。このため、 のリトルエンディアンモードを使用していたマイクロソフトの は設計を変更しなければならず、発売が遅れることとなった。
IBMのブレードサーバ用モジュールであるJS20/JS21といくつかのローエンドワークステーション、 サーバは 970 を利用している。このプロセッサはマーキュリー社の XSA-200 のようなハイエンド組み込みシステムでもまたいくつか使われた。 970 はしばしばマイクロソフトの に採用されているIBMの のコア、もしくは の (PPE)と同じであると誤解されることがある。しかし、両者のマイクロアーキテクチャはPowerPC 970とは完全に異なり〔PowerPC 970がout-of-orderの5-wayスーパースカラというリッチなコアであるのに対し、PPEやXenonはin-orderの2-wayスーパースカラという非常に簡素なコアである。その代わり、PPEやXenonではハードウェアマルチスレッディングを実装して1コアで2スレッドの実行が可能となっている。〕、単にVMX命令に対応した64ビットPowerPCであるという仕様が共通しているにすぎない。
==設計==
970 は をシングルコアに簡素化させたもので、32ビットおよび64ビットの 命令をネイティブに処理できる。プロセッサコアのマイクロアーキテクチャとしてはアウト・オブ・オーダー実行可能な5-wayのスーパースカラであり、主な仕様は以下の通り。
;クロックあたり8命令フェッチ
:一次命令キャッシュとは32バイト/サイクルの帯域で接続されており、1サイクルにつき8命令をフェッチ可能。
;クロックあたり最大5(内部)命令デコード/ディスパッチ
:PowerPC 970では、複雑な命令をデコード時に複数の内部命令 (86ビット長) に分解して実行するアプローチをとっている。そのため、パイプラインのデコード段は4段と、通常のRISCプロセッサと比較すると長い。2つまでの内部命令で表現可能なPowerPC命令についてはハードウェアデコーダで処理することができるが、それより多くの内部命令を必要とする命令についてはマイクロコードROMで処理される。
:デコードされた命令はグループに纏められて処理される。グループには5つのスロット (スロット0-4) が用意されており、最大5つの内部命令がスロット0からプログラム順に格納される。ただし、スロット4は分岐命令専用であり、デコードされた命令の中に分岐命令が存在しない場合はグループに含まれるのは最大4命令となる。また、同様にスロット0や1のみに格納できる命令もあり、プログラム順に格納した際にこれらの命令がうまく該当するスロットに入らない場合、代わりにNOPがスロットに入り調整が行われる。そのため、プログラム側で命令を上手に並べない限り、5命令/サイクルというピーク性能を維持し続けるのは難しい。
:ディスパッチはグループ単位で行われる。そのため、対応する命令キューに空きがない等の理由でディスパッチ不可能な命令がグループの中に1つでも存在すると、グループに含まれる全ての命令はディスパッチ不可能になりストールしてしまう。ディスパッチされたグループは後述するGlobal Completion Tableに登録され、各スロットの命令は各演算器の命令キューに入り待機状態となる。この際にレジスタ・リネーミングも行われ、各命令のオペランドは物理レジスタファイルにマッピングされる。
;クロックあたり最大10命令を10の演算器に対してアウト・オブ・オーダー発行可能
:PowerPC 970は内部に10個の演算器を備えており、各命令キューからの合計で最大10命令が同時に発行可能である。以下に各演算器の構成を示す。
:;2つの整数演算ユニット
::除算と一部の特殊命令を除くと、多くの整数演算命令はいずれのユニットでも実行可能である。ただし、乗算器はパイプライン化されておらず、整数乗算のパフォーマンスは低い。加減算や論理, シフト演算は1サイクルで実行可能であるが、後続命令へ演算結果のバイパスを行わない (オペランドは常にレジスタファイルから供給される) ため、実際に後続命令でオペランドが利用可能になるまでのレイテンシは2サイクルである。前世代のPowerPC G4 (7450以降) プロセッサは計4つの整数演算ユニットを備え (うち1つは乗除算用) 、レイテンシも最短で1サイクルと短かったため、やや見劣りする仕様となっている。
:;2つのロード・ストアユニット
::命令キューは整数演算命令と共用であるが、2つのパイプラインを備えている。複数のロード・ストアユニットを備えているのはPowerPCとしては初である。
:;2つの浮動小数点演算ユニット
::2つの単精度もしくは倍精度の浮動小数点演算が同時に実行可能で、どちらのユニットにも積和演算器を備えているため、SIMD命令を使わずに4FLOPs/サイクルを達成可能な理論性能を持つ。これは当時のPC用のプロセッサとしては非常に強力である。
:;2つのVMXユニット
::AltiVec互換のSIMD命令セットであるVMX命令が実行可能である。Vector Permute命令用のユニットとそれ以外の命令用のユニットに分かれており、初期G4プロセッサと同じ構成となっている。
:;1つの分岐処理ユニット
:;1つの条件レジスタ命令処理ユニット
;20エントリのGCT (Global Completion Table)
:PowerPC 970においてアウト・オブ・オーダー実行の状態を管理するリオーダ・バッファに相当するのがGCTである。GCTでは通常のリオーダ・バッファとは異なり前述のグループ単位で状態を管理するため、1エントリにつき最大5つの内部命令が格納可能で、テーブル全体では100の命令の状態を管理できる。G4ではわずか16命令分のリオーダ・バッファしか持っていなかったため、アウト・オブ・オーダー実行可能な命令ウィンドウが大きく増加している。
;32KBの一次データキャッシュ
:2-wayセットアソシアティブで、ライトスルーで動作する。リード2ポート、ライト1ポートを持ち、各ポート共に帯域は8バイト/サイクルである。レイテンシは2-4サイクル (データを必要とする実行ユニットによって異なる) となっている。
;64KBの一次命令キャッシュ
:ダイレクトマッピングで、帯域は32バイト/サイクルである。
;512KBの二次キャッシュ
:コアの半分の速度で動作し、帯域は64バイト/サイクルである。L1ミス、L2ヒット時のレイテンシは12-13サイクルである。
970 はシステムコントローラチップ(ノースブリッジ)との間で、一方向あたり32ビットのフロントサイドバスを2本持ち、プロセッサコアの速度の半分の速度で動作させることができる。このバスの帯域は1GT/sで上り下り合計8GB/sと、G4のMPXバス (167MHzで1.3GB/s) と比べると大きく速度が向上している。


抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「PowerPC 970」の詳細全文を読む




スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.